-
Notifications
You must be signed in to change notification settings - Fork 377
Support for building arm64 MSIs #5688
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
NikolaMilosavljevic
merged 4 commits into
dotnet:master
from
NikolaMilosavljevic:arm64.win
Jun 27, 2020
Merged
Support for building arm64 MSIs #5688
NikolaMilosavljevic
merged 4 commits into
dotnet:master
from
NikolaMilosavljevic:arm64.win
Jun 27, 2020
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Member
|
cc: @tommcdon |
dagood
approved these changes
Jun 22, 2020
Member
dagood
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, with one suggestion.
src/Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk/targets/windows/wix.targets
Outdated
Show resolved
Hide resolved
MichaelSimons
approved these changes
Jun 23, 2020
Member
|
I'll need to make sure to port this over to the new Shared Framework SDK that I'm working on. |
Member
|
ARM64 MSI testing complete and signing off. Thank you Nikola! |
jkoritzinsky
added a commit
to jkoritzinsky/arcade
that referenced
this pull request
Jun 29, 2020
ViktorHofer
pushed a commit
that referenced
this pull request
Oct 9, 2020
… frameworks (#5714) * Version 5.0.0-dev.20326.3 * Port #5688 to the new SDK. * Update readme with documentation of the shared framework generation. Installer and bundle generation docs still TBD. * Add back feature that was somehow lost in the rebase. * Add basic docs for the installer builds. * Finish documentation. * Update host file names to be overridable to support the crossgen2 pack. * Fix GeneratedBuildFile check in GenerateSharedFrameworkDepsFile * Split out the archive targets from the sharedfx targets so installer-only projects can also generate archives. * Fix error condition. * Version 5.0.0-dev.20365.8 Add PackageTargetOS property for the dotnet-runtime-deps packages to hook in to. * Only include runtime files in the deps file (not tool files or crosstargeting files). * Exclude PackOnly=true files from the deps file. They won't be available on disk. * Fix NuGet package type. * Remove important parameter from error tasks. * Allow files to be individually opted-out of being added to the deps file and platform manifest via the ExcludeFromDataFiles metadata. This should only be used for text files (such as native header files) that are included in packs but are never resolved by the hosting or sdk layers. * Reduce copying and enable empty installers for linux. * Better handle GenerateInstallers=false when building linux packages. * Enable overriding the package id for shared framework packages. * Add OverridePackageId property to avoid colliding with built-in NuGet properties that infer the package id. * Fix bad condition for PackageId. * First pass moving the installer and bundle infrastructure out of Microsoft.DotNet.SharedFramework.Sdk and into Microsoft.DotNet.Build.Tasks.Installer. * Factor out the archive creation targets to a Microsoft.DotNet.Build.Tasks.Archives package. * Fix installer package layout * Fix RemoveProperties Signed-off-by: Jeremy Koritzinsky <jekoritz@microsoft.com> * Fix various bugs that crept in during the refactoring. Signed-off-by: Jeremy Koritzinsky <jekoritz@microsoft.com> * Fix SkipBuild calculation * Fix including symbols in the symbols package. Signed-off-by: Jeremy Koritzinsky <jekoritz@microsoft.com> * Invoke Pack target as an inner build instead of hooking in via a wrapper around the Build target. * Clean up the skip build calculations and make them actually work. * Ensure we respect the SkipBuild property in the archives and installer packages as well. * Don't reference desktop-only files on the .NET Core build. * Update READMEs of the three packages to reflect the updated organization. * Enable overriding host json file location in the package (for crossgen2). * Implement closure, type, and file version validation. * PR feedback. * Comments and var clarification. * Automatically calculate ignored references for closure validation based on the referenced framework packs. Exclude culture assemblies from closure validation (otherwise we get duplicate assembly names). * Set SelfContained to true when processing framework references. * Don't set BuildDependsOn to empty. It breaks packages that hook into it (like the installers and archives packages) * Use System.Reflection.Metadata to get the assembly name to ensure .NETFX compat. Use more efficient publicKeyToken-to-string algorithm. * Rename folder to avoid warning * Remove unneeded NoWarn Signed-off-by: Jeremy Koritzinsky <jekoritz@microsoft.com> * React to changes in PrepareForReadyToRunCompilation. * Fix packaging non RuntimePack shared framework packs in msi installers. * Enable overriding the targets and tasks for the installer and archives packages like the old system for Microsoft.DotNet.Build.Tasks.SharedFramework.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change adds arm64 Wix support for Shared FX in Arcade, it allows other repos to build arm64 MSIs and Burn bundles. No additional changes are needed for dotnet/runtime and dotnet/windowsdesktop repos, besides picking up a new version of Arcade, that includes this change.
This fixes dotnet/runtime#1529 and expands further on the original plan. We will produce native arm64 MSI, and EXE, packages.
Arm64 requires v5.0 of Windows Installer schema - https://docs.microsoft.com/en-us/windows/win32/msi/using-64-bit-windows-installer-packages
Schema for other architectures is unchanged (v2.0) to allow installation on the same supported set of OS targets.